home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-06-23 | 1.4 KB | 66 lines | [TEXT/MPS ] |
- /*
- FastBitCopies.h
-
- Interface to FastBitCopies.c
-
- Special bit copy routines for 8-bit graphics
-
- Copyright 1993 by Al Evans
-
- 1/27/93
-
- */
-
- //Defined for shareware and commercial releases
- #undef COMMERCIAL_RELEASE
-
- //For internal use only
- #undef TESTING_C_RTNS
-
- //Is this for the PowerMac?
- #if (defined(powerc) || defined(__powerc) || defined (TESTING_C_RTNS))
- #define MoveBitsXP CMoveBitsXP
- #define MoveBitsCP CMoveBitsCP
- #define MoveBitsMasked CMoveBitsMasked
- #endif
-
- enum {
- notTransparent = 40
- };
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- pascal void FastCopyBits(const BitMap *srcBits,const BitMap *dstBits,const Rect *srcRect,
- const Rect *dstRect,short mode,RgnHandle maskRgn);
-
- #ifdef COMMERCIAL_RELEASE
- //Returns a ptr to a 8-bit mask the same size as srcBits
- //The mask contains 0xFF for each zero byte in srcBits, 0x00 for all others
- Ptr MakeMask(const BitMap *srcBits);
- #endif
-
- /*
- Assembly engines
- */
-
- extern void MoveBitsXP(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes, long mirrorFlags);
-
-
- extern void MoveBitsCP(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes);
-
- #ifdef COMMERCIAL_RELEASE
- extern void MoveBitsMasked(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes, Ptr mask, long mirrorFlags);
- #endif
-
- #ifdef __cplusplus
- }
- #endif
-